SigRec: Automatic Recovery of Function Signatures in Smart Contracts
نویسندگان
چکیده
Millions of smart contracts have been deployed onto Ethereum for providing various services, whose functions can be invoked. For this purpose, the caller needs to know function signature a callee, which includes its id and parameter types. Such signatures are critical many applications focusing on contracts, e.g., reverse engineering, fuzzing, attack detection, profiling. Unfortunately, it is challenging recover from contract bytecode, since neither debug information nor type present in bytecode. To address issue, prior approaches rely source code, or collection known incomplete databases heuristic rules, which, however, far adequate cannot cope with rapid growth new contracts. In paper, we propose novel solution that leverages how handled by virtual machine (EVM) automatically signatures. particular, exploit determine invoked locate extract ids, approach named type-aware symbolic execution (TASE) utilizes semantics EVM operations parameters identify number types parameters. Moreover, develop SigRec, tool recovering bytecode without need code databases. The extensive experimental results show SigRec outperforms all existing tools, achieving an unprecedented 98.7 percent accuracy within 0.074 seconds. We further demonstrate recovered useful fuzzing engineering
منابع مشابه
interpersonal function of language in subtitling
translation as a comunicative process is always said to be associated with various aspects of meaning loss or gain. subtitling as a mode of translating, due to special discoursal and textual conditions imposed upon it, is believed to be an obvious case of this loss or gain. presenting the spoken sound track of a film in writing and synchronizing the perception of this text by the viewers with...
15 صفحه اولQuantitative Analysis of Smart Contracts
Smart contracts are computer programs that are executed by a network of mutually distrusting agents, without the need of an external trusted authority. Smart contracts handle and transfer assets of considerable value (in the form of crypto-currency like Bitcoin). Hence, it is crucial that their implementation is bug-free. We identify the utility (or expected payoff) of interacting with such sma...
متن کاملExamining the role of Smart Contracts in the development of the electronic registration system of documents
The document registration system is one of the most important instruments for guaranteeing the rights of individuals and preventing the occurrence of many disputes. In many developed countries, attempts have been made to change the system of registering transactions and documents. Thus, countries like the United States and Britain have changed the status of electronic registrations by adopting ...
متن کاملPlasma: Scalable Autonomous Smart Contracts
Plasma is a proposed framework for incentivized and enforced execution of smart contracts which is scalable to a significant amount of state updates per second (potentially billions) enabling the blockchain to be able to represent a significant amount of decentralized financial applications worldwide. These smart contracts are incentivized to continue operation autonomously via network transact...
متن کاملAdding Concurrency to Smart Contracts
Modern cryptocurrency systems, such as Ethereum, permit complex financial transactions through scripts called smart contracts. These smart contracts are executed many, many times, always without real concurrency. First, all smart contracts are serially executed by miners before appending them to the blockchain. Later, those contracts are serially re-executed by validators to verify that the sma...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: IEEE Transactions on Software Engineering
سال: 2022
ISSN: ['0098-5589', '1939-3520', '2326-3881']
DOI: https://doi.org/10.1109/tse.2021.3078342